package com.cloudbroker.bcs.platform.dav.bizapi.t2service.operate;

import com.cloudbroker.bcs.common.entity.HSBCPSBackVO;
import com.cloudbroker.bcs.platform.dav.bizapi.constants.IFSFunctionIdsNew;
import com.cloudbroker.bcs.platform.dav.bizapi.service.base.vo.HSBCPSVO;
import com.cloudbroker.bcs.platform.dav.bizapi.service.operate.result.BrokerFundListResult;
import com.cloudbroker.bcs.platform.dav.bizapi.service.operate.result.BrokerIncomeListResult;
import com.cloudbroker.bcs.platform.dav.bizapi.service.operate.result.FansChargeListResult;
import com.cloudbroker.bcs.platform.dav.bizapi.service.operate.result.FansConsumeListResult;
import com.cloudbroker.bcs.platform.dav.bizapi.service.operate.result.FansFundListResult;
import com.cloudbroker.bcs.platform.dav.bizapi.service.operate.vo.DetailQueryListForm;
import com.cloudbroker.bcs.platform.dav.bizapi.service.operate.vo.FansBranchQueryListForm;
import com.cloudbroker.bcs.platform.dav.bizapi.service.operate.vo.FundFrozenForm;
import com.hundsun.jresplus.remoting.impl.annotation.Service;
import com.hundsun.jresplus.remoting.impl.annotation.ServiceModule;
import com.hundsun.jresplus.remoting.impl.annotation.ServiceParam;

/**
 * Created by wangxu13798 on 2016/8/17.
 */
@ServiceModule
public interface OperateFundT2BizService {

    @Service(functionId = IFSFunctionIdsNew.IFSOperateFund.FUNC_FANS_FUND_LIST, desc = "管理中台粉丝资金列表")
    public FansFundListResult funcFansFundList(@ServiceParam("param") FansBranchQueryListForm form);

    @Service(functionId = IFSFunctionIdsNew.IFSOperateFund.FUNC_BROKER_FUND_LIST, desc = "管理中台投顾资金列表")
    public BrokerFundListResult funcBrokerFundList(@ServiceParam("param") FansBranchQueryListForm form);

    @Service(functionId = IFSFunctionIdsNew.IFSOperateFund.FUNC_FANS_CONSUME_LIST, desc = "管理中台粉丝消费列表")
    public FansConsumeListResult funcFansConsumeList(@ServiceParam("param") DetailQueryListForm form);

    @Service(functionId = IFSFunctionIdsNew.IFSOperateFund.FUNC_FANS_CHARGE_LIST, desc = "管理中台粉丝充值列表")
    public FansChargeListResult funcFansChargeList(@ServiceParam("param") DetailQueryListForm form);

    @Service(functionId = IFSFunctionIdsNew.IFSOperateFund.FUNC_BROKER_INCOME_LIST, desc = "管理中台投顾收入列表")
    public BrokerIncomeListResult funcBrokerIncomeList(@ServiceParam("param") DetailQueryListForm form);

    @Service(functionId = IFSFunctionIdsNew.IFSOperateFund.FUNC_FANS_FUND_FROZEN, desc = "管理中台粉丝资金冻结")
    public HSBCPSBackVO funcFansFundFrozen(@ServiceParam("param") FundFrozenForm form);

    @Service(functionId = IFSFunctionIdsNew.IFSOperateFund.FUNC_BROKER_FUND_FROZEN, desc = "管理中台投顾资金冻结")
    public HSBCPSBackVO funcBrokerFundFrozen(@ServiceParam("param") FundFrozenForm form);

    @Service(functionId = IFSFunctionIdsNew.IFSOperateFund.FUNC_OPERATE_CONNECT_TEST, desc = "operate连接测试")
    public HSBCPSBackVO funcOperateConnectTest(HSBCPSVO form);
}
